Telegram Group & Telegram Channel
Моя первая работа "весь день писать код за деньги" была в Яндексе. Там я не трогал рантайм, а в основном занимался тем, что сейчас называют дата инженерией, т.е. нагружал кластер имени некоего польского математика. Как следствие, неоптимальный код ничего слишком страшного не делал, просто выполнялся часами или даже днями. Однажды я наспех написал джобу и пошел домой, утром увидел, что и близко не выполнена, и обнаружил там классическую ошибку новичка: проверка условия типа if user in some_users, выполняемая миллионы раз, проходила по some_users, который был многомиллионным списком. Одна строка вида some_users = set(some_users) ускорила тогда джобу в 250 тысяч раз. Это мой личный рекорд ускорения (и личный рекорд неэффективности, конечно, тоже).

Потом работал в компаниях, где оптимизировать надо было только рантайм/инференс, и редко делал это сам - вокруг было слишком много ICPC-олимпиадников, и я со свиным рылом в калашный ряд без особой нужды не совался. А если и совался, то обычно оптимизация лежала в DL плоскости и была довольно прямолинейной: попробовать порубить или факторизовать свертки тут и там, посмотреть на метрики, где это приносит меньше вреда, готово, вы великолепны. Было и такое: все датасеты были настолько маленькими, что можно было все алгоритмы делать брутфорсом, и никто бы не заметил; даже счета от AWS редко стимулировали что-то оптимизировать.

А сейчас я с интересом столкнулся с данными того интересного масштаба, что переходить на распределенные вычисления пока рано, а на одной машине, даже жирной, все работает слишком медленно. Например, в прошлом посте я писал, что пилю NLP классификатор. Все шустро работало, пока я не перешел с игрушечного датасета (десятки тысяч строк) к настоящему (десятки миллионов). Т.е. какая-нибудь функция даже с линейной сложностью и скоростью выполнения 1ms внезапно превратилась в недопустимо тормознутую, а подход "просто закинуть все в память" перестал масштабироваться.

Пока что я успел возненавидеть pandas (в одном пайплайне сделал +30% к скорости, заменив все на простые дикты), полюбить polars, написать суперспецифическую обертку к LMDB в стиле RocksDict и просто начать иногда думать в процессе написания кода, а не просто кататься ебалом по клавиатуре принимать подсказки Copilot. Единственное, что меня беспокоило — это Rust. В мире нет никого более безответственного и безнравственного, чем 🦀 программисты, которые стремятся сделать все вокруг blazing fast 🚀. И я знал, что довольно скоро в это окунусь.



tg-me.com/partially_unsupervised/160
Create:
Last Update:

Моя первая работа "весь день писать код за деньги" была в Яндексе. Там я не трогал рантайм, а в основном занимался тем, что сейчас называют дата инженерией, т.е. нагружал кластер имени некоего польского математика. Как следствие, неоптимальный код ничего слишком страшного не делал, просто выполнялся часами или даже днями. Однажды я наспех написал джобу и пошел домой, утром увидел, что и близко не выполнена, и обнаружил там классическую ошибку новичка: проверка условия типа if user in some_users, выполняемая миллионы раз, проходила по some_users, который был многомиллионным списком. Одна строка вида some_users = set(some_users) ускорила тогда джобу в 250 тысяч раз. Это мой личный рекорд ускорения (и личный рекорд неэффективности, конечно, тоже).

Потом работал в компаниях, где оптимизировать надо было только рантайм/инференс, и редко делал это сам - вокруг было слишком много ICPC-олимпиадников, и я со свиным рылом в калашный ряд без особой нужды не совался. А если и совался, то обычно оптимизация лежала в DL плоскости и была довольно прямолинейной: попробовать порубить или факторизовать свертки тут и там, посмотреть на метрики, где это приносит меньше вреда, готово, вы великолепны. Было и такое: все датасеты были настолько маленькими, что можно было все алгоритмы делать брутфорсом, и никто бы не заметил; даже счета от AWS редко стимулировали что-то оптимизировать.

А сейчас я с интересом столкнулся с данными того интересного масштаба, что переходить на распределенные вычисления пока рано, а на одной машине, даже жирной, все работает слишком медленно. Например, в прошлом посте я писал, что пилю NLP классификатор. Все шустро работало, пока я не перешел с игрушечного датасета (десятки тысяч строк) к настоящему (десятки миллионов). Т.е. какая-нибудь функция даже с линейной сложностью и скоростью выполнения 1ms внезапно превратилась в недопустимо тормознутую, а подход "просто закинуть все в память" перестал масштабироваться.

Пока что я успел возненавидеть pandas (в одном пайплайне сделал +30% к скорости, заменив все на простые дикты), полюбить polars, написать суперспецифическую обертку к LMDB в стиле RocksDict и просто начать иногда думать в процессе написания кода, а не просто кататься ебалом по клавиатуре принимать подсказки Copilot. Единственное, что меня беспокоило — это Rust. В мире нет никого более безответственного и безнравственного, чем 🦀 программисты, которые стремятся сделать все вокруг blazing fast 🚀. И я знал, что довольно скоро в это окунусь.

BY partially unsupervised


Warning: Undefined variable $i in /var/www/tg-me/post.php on line 283

Share with your friend now:
tg-me.com/partially_unsupervised/160

View MORE
Open in Telegram


partially unsupervised Telegram | DID YOU KNOW?

Date: |

Launched in 2013, Telegram allows users to broadcast messages to a following via “channels”, or create public and private groups that are simple for others to access. Users can also send and receive large data files, including text and zip files, directly via the app.The platform said it has more than 500m active users, and topped 1bn downloads in August, according to data from SensorTower.

If riding a bucking bronco is your idea of fun, you’re going to love what the stock market has in store. Consider this past week’s ride a preview.The week’s action didn’t look like much, if you didn’t know better. The Dow Jones Industrial Average rose 213.12 points or 0.6%, while the S&P 500 advanced 0.5%, and the Nasdaq Composite ended little changed.

partially unsupervised from tw


Telegram partially unsupervised
FROM USA